package timing

import "game/readygo/util"

//零点的几点
var OClock int64 = 0

func TodayOTime() int64 {
	return util.TodayZeroMillis() + util.ONE_HOUR_MILLIS*OClock
}

func TomorrowOTime() int64 {
	return util.TomorrowZeroMillis() + util.ONE_HOUR_MILLIS*OClock
}

func WeekMondayOTime() int64 {
	return util.WeekMondayZeroMillis() + util.ONE_HOUR_MILLIS*OClock
}

func NextWeekMondayOTime() int64 {
	return util.NextWeekMondayZeroMillis() + util.ONE_HOUR_MILLIS*OClock
}

func MonthOTime() int64 {
	return util.MonthZeroMillis() + util.ONE_HOUR_MILLIS*OClock
}

func NextMonthOTime() int64 {
	return util.NextMonthZeroMillis() + util.ONE_HOUR_MILLIS*OClock
}

//获取某一天的零点时间
func theDayOTime(timeMillis int64) int64 {
	theTimeZero := util.SomedayZeroMillis(timeMillis)
	theTimeFive := theTimeZero + util.ONE_HOUR_MILLIS*OClock
	if timeMillis < theTimeFive {
		//5点前创号的角色，到5点之后就算创号第二天
		theTimeFive = theTimeFive - util.ONE_DAY_MILLIS
	}
	return theTimeFive
}

//获取当前时间的下一个5点，跟明天的5点有区别，比如当前是1点，那么下一个5点就是今天的5，如果当前是6点，那么下一个5点是明天的5点
func NextDayOTime() int64 {
	day5Time := theDayOTime(util.Now())
	return day5Time + util.ONE_DAY_MILLIS
}
